/**
 * AI视频制作API接口 (基于ai_video模块)
 * 只对接后端已实现的真实接口
 * 通过api.js拦截器统一管理请求
 */
import api from '@/utils/api'

export const videoApi = {
  // 视频生成 - 对应后端 POST /api/api/create/
  generate: {
    // 创建视频生成任务
    create: (generationData) => {
      console.log('调用视频生成API，参数:', generationData)
      return api.post('/api/create/', generationData)
    },
  },

  // 视频任务管理 - 对应后端已实现的接口
  tasks: {
    // 获取视频任务列表 - 对应后端 GET /api/api/list/
    getList: (params = {}) => {
      console.log('调用获取视频任务列表API，参数:', params)
      return api.get('/api/list/', { params: params })
    },
    
    // 查询视频任务进度 - 对应后端 POST /api/api/query/
    queryStatus: (taskId) => {
      console.log('调用查询视频任务进度API，任务ID:', taskId)
      return api.post('/api/query/', { volc_task_id: taskId })
    },
    
    // 删除视频任务 - 对应后端 POST /api/api/delete/
    delete: (taskId) => {
      console.log('调用删除视频任务API，任务ID:', taskId)
      return api.post('/api/delete/', { volc_task_id: taskId })
    },
  },
}

/**
 * 便捷调用方法 - 直接导出各模块
 */
export const {
  generate,
  tasks
} = videoApi

/**
 * 使用示例：
 * 
 * // 生成视频
 * import { generate } from '@/api/video'
 * const result = await generate.create({
 *   prompt: "一只可爱的小猫在花园里玩耍",
 *   resolution: "480p",
 *   aspect_ratio: "16:9",
 *   duration: 5
 * })
 * 
 * // 获取视频任务列表
 * import { tasks } from '@/api/video'
 * const taskList = await tasks.getList()
 * 
 * // 查询视频任务进度
 * const taskStatus = await tasks.queryStatus("task_id_here")
 * 
 * // 删除视频任务
 * await tasks.delete("task_id_here")
 */

export default videoApi